Skip to main content

编译原理/originlang语言设计/1. 语法设计

· 3 min read
关键字和语法
  • 整数 int8 int16 int32 int64 int 默认

  • 浮点数 float32 float64

  • 布尔类型 bool

  • 字符类型 string(不用缩写,语义更明确)

  • 数组 []

  • 指针 *

null

空知

函数式声明 -> (haskll语言参考)

操作符


算术操作符:

+:加法操作,将两个值相加。
-:减法操作,将一个值减去另一个值。
*:乘法操作,将两个值相乘。
/:除法操作,将一个值除以另一个值。
%:取模操作,计算两个值相除的余数。
++:自增操作,将变量的值增加1。
--:自减操作,将变量的值减少1。
比较操作符:

==:等于操作,判断两个值是否相等。
!=:不等于操作,判断两个值是否不相等。
<:小于操作,判断一个值是否小于另一个值。
>:大于操作,判断一个值是否大于另一个值。
<=:小于等于操作,判断一个值是否小于等于另一个值。
>=:大于等于操作,判断一个值是否大于等于另一个值。
逻辑操作符:

&&:逻辑与操作,判断多个条件是否同时成立。
||:逻辑或操作,判断多个条件是否至少有一个成立。
!:逻辑非操作,取反一个条件的值。
位操作符(主要用于处理二进制数据):

&:按位与操作,对两个数的二进制进行按位与运算。
|:按位或操作,对两个数的二进制进行按位或运算。
^:按位异或操作,对两个数的二进制进行按位异或运算。
~:按位取反操作,对一个数的二进制进行按位取反运算。
<<:左移操作,将一个数的二进制向左移动指定位数。
>>:右移操作,将一个数的二进制向右移动指定位数。
赋值操作符:

=:赋值操作,将一个值赋给一个变量。
+=:加法赋值操作,将变量的值加上一个值并赋给该变量。
-=:减法赋值操作,将变量的值减去一个值并赋给该变量。
*=:乘法赋值操作,将变量的值乘以一个值并赋给该变量。
/=:除法赋值操作,将变量的值除以一个值并赋给该变量。
其他操作符:

.:成员访问操作,用于访问对象或结构体的成员。
[]:下标访问操作,用于访问数组或集合中的元素。
():函数调用操作,用于调用函数并传递参数。